import wepy from 'wepy'
import Dialog from '../../components/vant/dialog/dialog';

export default class Home extends wepy.mixin {
  data = {
    cart: []
  }

  methods = {
    // 步进器发生变化触发
    setpperChange (e) {
      // 想修改全局的数据 需要 数量和id  数量：e.detail  id: e.currentTarget.dataset.id
      // 1. 在全局定义修改数量的方法
      // 2. 调用全局的方法，然后将数量和id传到全局的方法里面
      this.$parent.editCount(e.detail,e.currentTarget.dataset.id)
    },

    // 复选框发生变化
    checkboxChange (id) {
      this.$parent.updateIsCheck(id)
    },

    // 点击删除
    removeHandle (id) {
      Dialog.confirm({
        title: '标题',
        message: '确认删除该商品？'
      }).then(() => {
        // on confirm
        this.$parent.removeGoodsItem(id)
        this.$apply()
      }).catch(() => {
        // on cancel
        wepy.baseToast('取消删除')
      });
      // 
    },

    // 全选复选框发生变化
    fullChange (e) {
      this.$parent.uadateAllIscheck(e.detail)
    },

    // 跳转到商品详情
    goGoodsDetail (id) {
      wepy.navigateTo({
        url: '/pages/goods_detail/main?goods_id='+id
      })
    },

    // 提交订单
    submitOrder () {
      const flag = this.cart.every(x=>!x.isCheck)
      if(flag) {
        return wepy.baseToast('亲，给点面子选一件')
      }
      wepy.navigateTo({
        url: '/pages/order/index'
      })
    }
  }

  computed = {
    // 是否显示空购物车
    isEmptyCart () {
      return this.cart.length === 0
    },

    // 计算要购买的商品总价
    totalPrice () {
      var total = 0
      this.cart.forEach(item=>{
        if(item.isCheck){
          // 当前商品的总价
          total+=item.count*item.price
        }
      })
      return total*100
    },

    // 计算是否全选
    isFullCheck () {
      return this.cart.every(x=>x.isCheck)
    }
  }

  onLoad () {
    // 将全局数据转存一下
    this.cart = this.$parent.globalData.cart
  }

  onShow () {
    this.$parent.setTabbarBadge()
  }
}